In some environments, some tasks are suitable to being performed by a robot. However, collaboration between the robot and a human is an important factor in effectively performing certain tasks. For instance, in a retail environment, having a human direct the operations of a robot is an important factor in effectively performing certain tasks. Consider an example where a robot is employed to obtain items from a retail store for a customer. In this example, if a customer wants to purchase an item, a human, for example, a store employee or the customer may instruct the robot on where to travel in the retail space to retrieve the item. For example, the human may provide directional instructions to the robot to go down a specific aisle and make turns at specific landmarks in order retrieve the item. In current implementations, the human directing the robot is a trained professional with understanding of how to operate the robot. For example, the human directing the robot may be trained to program the robot. Such training substantially increases the cost for operating the robot.
It is therefore desirable to create a system which is capable of translating conversational instructions (referred to herein as natural language instructions) of directions and task execution into robot programming language/instructions. For instance, the system should be capable of translating natural language instructions provided by a robot operator (for example, a retail worker) into robot programming instructions, without requiring that the robot operator have specialized training. The robot operator may instruct the robot using conversational instructions to, for example, “go straight; then turn right at Aisle 3 to help a customer,” or “go through this door, turn left before you hit the wall to pick up bananas, and come back to fill the banana bins.” For the robot to carry out the conversational instructions, the robot must have a map/geographical layout of a space in which the robot is to operate. The geographical layout of, for example, a retail space may include landmarks, such as, the locations of doors, elevators, sections, signs, an information desk, displays, and/or stands. Some of the landmarks, such as, the doors or windows are static, i.e., these landmarks cannot be easily changed. Other landmarks, such as, the location of a flower stand or a drink display are dynamic, i.e., these landmarks can be easily changed. Without an accurate geographical layout of a space where both the static and dynamic landmarks clearly identified, it is difficult to translate natural language instructions provided by the robot operator into robot programming instructions that can be implemented by the robot. Some current implementations therefore provide a detailed geographical layout of a space, with all static and dynamic landmarks clearly defined. The problem with providing the detailed geographical layout of a space is when dynamic landmarks are added or removed from the space, the detailed geographical layout of the space must be updated before the robot can accurately carry out directional instructions.
Accordingly, there is a need for an improved method and apparatus for dynamically updating landmarks in a geographical layout during execution of natural language instructions.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.